import { getAxios, commonAxios, commonAxiosJson, updateBatchAxiosJson, deleteAxios, uploadImg, exportExcelAxios } from './request';

/* 图片获取域名地址 */
export const imageUrl = 'https://img.xxx.com';
/* 图片上传地址 */
export const uploadUrl = 'https://upload-z2.qiniup.com';

/* 配置字段信息地址*/
const dictUrl = '/back/config-type';
/* 配置字段信息地址*/
const dictLabelUrl = '/back/dict-config';

/* 获取菜单信息地址 */
const menuUrl = '/back/master-auth';

/* 获取机构组织信息地址 */
const organizationUrl = '/back/master-agency';


/* 红包管理信息地址*/
const redEnvelopeManagementInfoUrl = '/back/red-packet';
/* 红包日志信息地址*/
const moneyLogUrl = '/back/money-log';

/* 金币管理信息地址*/
const goldInfoUrl = '/back/gold-coin';
/* 金币日志信息地址*/
const goldLogUrl = '/back/gold-coin-log';

/* 红包商城 商品分类信息 地址*/
const mallCategoryUrl = '/back/mall-category';

/* 红包商城 商品信息 地址*/
const mallGoodsUrl = '/back/mall-goods';

/* 红包商城 商品规格信息 地址 */
const mallSKUUrl = '/back/mall-sku';

/* 红包商城 运费模板 地址*/
const mallDeliverUrl = '/back/mall-deliver';

/* 获取 省市县 地址 */
const regionUrl = '/back/region/get-region-list';

/* 获取 广告类型信息 地址*/
const bannerTypeUrl = '/back/banner-type';
/* 获取 广告信息 地址*/
const bannerUrl = '/back/banner';

/* 获取 红包商城 订单信息 地址*/
const mallOrderUrl = '/back/mall-order';

/* 获取 红包商城 常用物流公司 地址*/
const expressUrl = '/back/express';

/* 获取角色信息地址 */
const roleUrl = '/back/master-role';

/* 获取  租机 地址 */
const rentUrl = '/back/rent';

/* 客服分类 */
const customerServiceCategoryUrl = '/back/customer-service-category';

/* 客服 */
const customerServiceUrl = '/back/customer-service';


/* 用户信息地址 */
const personUrl = '/organization/user';

/* 登录地址 */
const loginUrl = '/back/login/login';
const refreshTokenUrl = '/back/login/refresh-login';

/* 管理员用户列表地址 */
const userUrl = '/back/master';

/* 七牛云token */
const uploadTokenUrl = '/back/mall-goods/get-up-token';

/* 版本升级地址 */
const appVersionInfoUrl = '/back/app-version';
class API {

  /*字典类型：获取字典类型信息 */
  getDictTypeInfo (params) {
    return getAxios(dictUrl, params);
  }
  /*字典类型：获取字典数据详细信息 */
  getDictDetailDataInfo (params) {
    return getAxios(dictUrl + '/getData/' + params.id, params);
  }
  /* 字典类型：新增，更新字典类型信息 */
  commonDictTypeInfo (params, type) {
    return commonAxiosJson(dictUrl, params, type);
  }
  /* 字典类型：删除字典信息 */
  deleteDictInfo (params) {
    return deleteAxios(dictUrl, params);
  }


  /*字典数据：获取字典数据所有信息 */
  getDictDataInfo (params) {
    return getAxios(dictLabelUrl, params);
  }
  /* 字典数据：新增，更新字典值信息 */
  commonDictDataInfo (params, type) {
    return commonAxiosJson(dictLabelUrl, params, type);
  }
  /* 红包商城数据：修改字典标签 排序 信息 */
  putDictLabelSortInfo (params) {
    return commonAxiosJson(dictLabelUrl + '/update-sort', params, 'PUT');
  }
  /* 字典数据：删除字典标签信息 */
  deleteDictLabelInfo (params) {
    return deleteAxios(dictLabelUrl, params);
  }

  /*红包管理数据：获取红包 信息 */
  getRedEnvelopeManagementInfo (params) {
    return getAxios(redEnvelopeManagementInfoUrl, params);
  }
  /* 红包管理数据：修改用户红包信息 */
  putRedRechargeInfo (params) {
    return commonAxiosJson(redEnvelopeManagementInfoUrl + '/recharge', params, 'PUT');
  }
  /*红包日志数据：获取红包日志 信息 */
  getMoneyLogUrlInfo (params) {
    return getAxios(moneyLogUrl, params);
  }

  /*红包管理数据：获取金币 信息 */
  getGoldInfo (params) {
    return getAxios(goldInfoUrl, params);
  }
  /*金币日志数据：获取红包日志 信息 */
  getGoldLogInfo (params) {
    return getAxios(goldLogUrl, params);
  }

  /* 红包商城数据：获取 商品分类信息 */
  getMallCategoryInfo (params) {
    return getAxios(mallCategoryUrl, params);
  }
  /* 红包商城数据：新增，修改商品分类信息 */
  commonMallCategoryInfo (params, type) {
    return commonAxiosJson(mallCategoryUrl, params, type);
  }
  /* 红包商城数据：修改商品分类 排序 信息 */
  putMallCategorySortInfo (params) {
    return commonAxiosJson(mallCategoryUrl + '/update-sort', params, 'PUT');
  }
  /* 红包商城数据：删除 商品分类信息 */
  deleteMallCategoryInfo (params) {
    return deleteAxios(mallCategoryUrl, params);
  }

  /* 红包商城数据：获取 商品信息 */
  getMallGoodsInfo (params) {
    return getAxios(mallGoodsUrl, params);
  }
  /* 红包商城数据：获取 商品详情信息 */
  getMallGoodsByIdInfo (params) {
    return getAxios(mallGoodsUrl + '/' + params.id, params);
  }
  /* 红包商城数据：新增，修改商品信息 */
  commonMallGoodsInfo (params, type) {
    return commonAxiosJson(mallGoodsUrl, params, type);
  }
  /* 红包商城数据：修改商品 状态 信息 */
  putOnShelfInfo (params) {
    return commonAxiosJson(mallGoodsUrl + '/change-status', params, 'PUT');
  }
  /* 红包商城数据：修改商品 排序 信息 */
  putMallGoodsSortInfo (params) {
    return commonAxiosJson(mallGoodsUrl + '/update-sort', params, 'PUT');
  }
  /* 红包商城数据：删除 商品信息 */
  deleteMallGoodsInfo (params) {
    return deleteAxios(mallGoodsUrl, params);
  }


  /* 红包商城数据：新增，商品规格名称信息 */
  commonMallSKUInfo (params, type) {
    return commonAxiosJson(mallSKUUrl + '/add-spec', params, 'POST');
  }
  /* 红包商城数据：新增规格值信息 */
  commonmSpecValueInfo (params, type) {
    return commonAxiosJson(mallSKUUrl + '/add-spec-value', params, 'POST');
  }
  /* 红包商城数据：规格值排序信息 */
  putSpecValueSortInfo (params, type) {
    return commonAxiosJson(mallSKUUrl + '/change-spec-value-sort', params, 'PUT');
  }


  /* 红包商城数据：获取 运费模板信息 */
  getMallDeliverInfo (params) {
    return getAxios(mallDeliverUrl, params);
  }
  /* 红包商城数据：获取 运费模板详情信息 */
  getMallDeliverByIdInfo (params) {
    return getAxios(mallDeliverUrl + '/' + params.id, {});
  }
  /* 红包商城数据：新增，修改运费模板信息 */
  commonMallDeliverInfo (params, type) {
    return commonAxiosJson(mallDeliverUrl, params, type);
  }
  /* 红包商城数据：删除 运费模板信息 */
  deleteMallDeliverInfo (params) {
    return deleteAxios(mallDeliverUrl, params);
  }

  /* 省市县数据：获取 市县信息 */
  getRegionInfo (params) {
    return getAxios(regionUrl, params);
  }

  /* 广告信息：获取 广告类型信息 */
  getBannerTypeInfo (params) {
    return getAxios(bannerTypeUrl, params);
  }
  /* 广告信息：新增，修改广告类型信息 */
  commonBannerTypeInfo (params, type) {
    return commonAxiosJson(bannerTypeUrl, params, type);
  }
  /* 红包商城数据：修改广告类型 排序 信息 */
  putBannerTypeSortInfo (params) {
    return commonAxiosJson(bannerTypeUrl + '/update-sort', params, 'PUT');
  }
  /* 广告信息：删除 广告类型信息 */
  deleteBannerTypeInfo (params) {
    return deleteAxios(bannerTypeUrl, params);
  }

  /* 广告信息：获取 广告信息 */
  getBannerInfo (params) {
    return getAxios(bannerUrl, params);
  }
  /* 广告信息：新增，修改广告信息 */
  commonBannerInfo (params, type) {
    return commonAxiosJson(bannerUrl, params, type);
  }
  /* 红包商城数据：修改广告信息 排序 信息 */
  putBannerSortInfo (params) {
    return commonAxiosJson(bannerUrl + '/update-sort', params, 'PUT');
  }
  /* 广告信息：删除 广告信息 */
  deleteBannerInfo (params) {
    return deleteAxios(bannerUrl, params);
  }

  /*获取 红包商城 订单信息 */
  getMallOrderInfo (params) {
    return getAxios(mallOrderUrl, params);
  }
  /* 红包商城数据：通过id获取 订单信息 */
  getMallOrderByIdInfo (params) {
    return getAxios(mallOrderUrl + '/' + params.id, params);
  }
  /*获取 红包商城 打印快递单信息 */
  getMallOrderPrintExpressInfo (params) {
    return getAxios(mallOrderUrl + '/print-express', params);
  }
  /*获取 红包商城 再次打印快递单信息 */
  getMallOrderPrintOldExpressInfo (params) {
    return getAxios(mallOrderUrl + '/print-old-express', params);
  }
  /* 红包商城数据：订单 发货 信息 */
  putBannerOrderDeliveryInfo (params) {
    return commonAxiosJson(mallOrderUrl + '/order-delivery', params, 'PUT');
  }
  /* 红包商城数据：订单 商家备注 信息 */
  putMallOrderRemarkInfo (params) {
    return commonAxiosJson(mallOrderUrl + '/order-remark', params, 'PUT');
  }
  /* 红包商城数据：订单 订单优惠 信息 */
  putMallOrderReduceInfo (params) {
    return commonAxiosJson(mallOrderUrl + '/order-reduce', params, 'PUT');
  }
  /* 红包商城数据：订单 订单取消 信息 */
  putMallOrderCancelInfo (params) {
    return commonAxiosJson(mallOrderUrl + '/cancel-order', params, 'PUT');
  }
  /* 红包商城数据：订单 确认收货 信息 */
  putMallOrderConfirmInfo (params) {
    return commonAxiosJson(mallOrderUrl + '/confirm-order', params, 'PUT');
  }
  /* 红包商城数据：订单 确认退款 信息 */
  putMallOrderAgreeRefundInfo (params) {
    return commonAxiosJson(mallOrderUrl + '/agree-refund-order', params, 'PUT');
  }
  /* 红包商城数据：订单 确认驳回退款 信息 */
  putMallOrderRejectRefundInfo (params) {
    return commonAxiosJson(mallOrderUrl + '/reject-refund-order', params, 'PUT');
  }
  /* 红包商城数据：订单 订单打印 信息 */
  getMallOrderPrintInfo (params) {
    return getAxios(mallOrderUrl + '/order-print', params);
  }
  /* 红包商城数据：订单 修改订单打印状态 信息 */
  putMallHasPrintInfo (params) {
    return commonAxiosJson(mallOrderUrl + '/has-print', params, 'PUT');
  }
  /* 红包商城数据：订单 修改订单退款状态（客服发起退款） 信息 */
  putMallApplyRefundOrderInfo (params) {
    return commonAxiosJson(mallOrderUrl + '/apply-refund-order', params, 'PUT');
  }

  /*物流公司 :获取 物流公司信息  */
  getExpressInfo (params) {
    return getAxios(expressUrl, params);
  }
  /* 物流公司信息：新增，修改物流公司信息 */
  commonExpressInfo (params, type) {
    return commonAxiosJson(expressUrl, params, type);
  }
  /* 物流公司信息：删除 广告物流公司信息 */
  deleteExpressInfo (params) {
    return deleteAxios(expressUrl, params);
  }
  /* 物流公司信息 :获取常用 物流公司信息 */
  getLogisticsInfo (params) {
    return getAxios(expressUrl + '/get-express-list', params);
  }
  /* 物流公司信息：修改广告信息 排序 信息 */
  putExpressSortInfo (params) {
    return commonAxiosJson(expressUrl + '/update-sort', params, 'PUT');
  }

  /* 获取菜单信息 */
  getMenuInfo (params) {
    return getAxios(menuUrl, params);
  }
  /* 获取菜单信息 */
  getMenuAllInfo (params) {
    return getAxios(menuUrl + '/auth-all', params);
  }
  /* 获取登录人菜单信息 */
  getMenuSelfInfo (params) {
    return getAxios(menuUrl + '/token', params);
  }
  /* 新增，更新菜单信息 */
  commonMenuInfo (params, type) {
    return commonAxiosJson(menuUrl, params, type);
  }
  /* 删除菜单信息 */
  deleteMenuInfo (params) {
    return deleteAxios(menuUrl, params);
  }

  /* 获取机构组织信息 */
  getOrganizationInfo (params) {
    return getAxios(organizationUrl, params);
  }
  /* 获取机构组织信息 */
  getOrganizationAllInfo (params) {
    return getAxios(organizationUrl + '/auth-all', params);
  }
  /* 新增，更新机构组织信息 */
  commonOrganizationInfo (params, type) {
    return commonAxiosJson(organizationUrl, params, type);
  }
  /* 删除机构组织信息 */
  deleteOrganizationInfo (params) {
    return deleteAxios(organizationUrl, params);
  }

  /* 获取角色信息 */
  getRoleInfo (params) {
    return getAxios(roleUrl, params);
  }

  /* 获取我的角色信息 */
  getMyRoleInfo (params) {
    return getAxios(roleUrl + '/my-auth', params);
  }
  /* 新增，更新角色信息 */
  commonRoleInfo (params, type) {
    return commonAxiosJson(roleUrl, params, type);
  }
  /* 删除角色信息 */
  deleteRole (params) {
    return deleteAxios(roleUrl, params);
  }


  /* 获取 以租代购全部订单列表 信息 */
  getPurchasingByRentOrderAllInfo (params) {
    return getAxios(rentUrl + '/out-order/index', params);
  }

  /* 获取 代扣记录列表 信息 */
  getWithholdInfo (params) {
    return getAxios(rentUrl + '/withhold', params);
  }

  /* 获取 以租代购订单审核过的订单列表 信息 */
  getPurchasingByRentOrderSendgoodsInfo (params) {
    return getAxios(rentUrl + '/sendgoods', params);
  }

  /* 更新 以租代购 发货 信息 */
  putPurchasingByRentSendInfo (params) {
    return commonAxiosJson(rentUrl + '/sendgoods/send', params, 'PUT');
  }

  /* 更新 以租代购 确认发货 信息 */
  putPurchasingByRentConfirmSendInfo (params) {
    return commonAxiosJson(rentUrl + '/sendgoods/receipt', params, 'PUT');
  }

  /* 更新 以租代购 上传发货图片 信息 */
  putPurchasingByRentUploadShipImgInfo (params) {
    return commonAxiosJson(rentUrl + '/sendgoods/upload-img', params, 'POST');
  }

  /* 获取 以租代购订单已发货订单列表 信息 */
  getPurchasingByRentOrderShippedInfo (params) {
    return getAxios(rentUrl + '/sendgoods/issend', params);
  }

  /* 获取 以租代购订单待归还订单列表 信息 */
  getPurchasingByRentOrderWaitbackInfo (params) {
    return getAxios(rentUrl + '/sendgoods/waitback', params);
  }

  /* 更新 以租代购 买断 信息 */
  putPurchasingByRentBuyoutInfo (params) {
    return commonAxiosJson(rentUrl + '/sendgoods/buyout', params, 'PUT');
  }

  /* 更新 以租代购 上传资料 信息 */
  putPurchasingByRentUploadInfo (params) {
    return commonAxiosJson(rentUrl + '/sendgoods/upload', params, 'POST');
  }

  /* 获取 以租代购订单 授权记录订单列表 信息 */
  getPurchasingByRentPreAuthorizationInfo (params) {
    return getAxios(rentUrl + '/paylog/index', params);
  }

  /* 获取 客服分类信息 */
  getCustomerServiceCategoryInfo (params) {
    return getAxios(customerServiceCategoryUrl, params);
  }
  /* 新增，修改客服分类信息 */
  commonCustomerServiceCategoryInfo (params, type) {
    return commonAxiosJson(customerServiceCategoryUrl, params, type);
  }
  /* 修改客服分类 排序 信息 */
  putCustomerServiceCategorySortInfo (params) {
    return commonAxiosJson(customerServiceCategoryUrl + '/update-sort', params, 'PUT');
  }
  /* 删除 客服分类信息 */
  deleteCustomerServiceCategoryInfo (params) {
    return deleteAxios(customerServiceCategoryUrl, params);
  }

  /* 获取 客服信息 */
  getCustomerServiceInfo (params) {
    return getAxios(customerServiceUrl, params);
  }
  /* 新增，修改客服信息 */
  commonCustomerServiceInfo (params, type) {
    return commonAxiosJson(customerServiceUrl, params, type);
  }
  /* 修改客服 排序 信息 */
  putCustomerServiceSortInfo (params) {
    return commonAxiosJson(customerServiceUrl + '/update-sort', params, 'PUT');
  }
  /* 删除 客服信息 */
  deleteCustomerServiceInfo (params) {
    return deleteAxios(customerServiceUrl, params);
  }

  /* 获取个人信息 */
  getPersonalInfo (params) {
    return getAxios(personUrl, params);
  }


  /* 获取七牛云上传token */
  getUploadToken (params) {
    console.log(params);
    return getAxios(uploadTokenUrl, params);
  }

  /* 富文本中自定义上传图片 */
  postUploadImgInfo (params) {
    return uploadImg(uploadUrl, params);
  }

  /* 获取管理员用户列表信息 */
  getUserListInfo (params) {
    return getAxios(userUrl, params);
  }
  /* 通过id获取管理员用户列表信息 */
  getUserByIdInfo (params) {
    return getAxios(userUrl + '/' + params.id, params);
  }
  /* 新增，更新管理员用户列表信息 */
  commonUserInfoListInfo (params, type) {
    return commonAxiosJson(userUrl, params, type);
  }
  /* 重置用户密码 */
  updataResetUserPasswordInfo (params) {
    return commonAxiosJson(userUrl + "/reset-password", params, 'PUT');
  }

  /* 禁用,启用 用户账号 */
  updataAccountStatusInfo (params) {
    return commonAxiosJson(userUrl + "/change-status", params, 'PUT');
  }
  /* 删除管理员用户信息 */
  deleteUserInfo (params) {
    return deleteAxios(userUrl, params);
  }

  /* 更新密码 */
  updateChangepwdInfo (params, type) {
    return commonAxiosJson(userUrl + '/change-password', params, type);
  }
  /* 获取管理员用户个人信息 */
  getUserInfoInfo (params) {
    return getAxios(userUrl + '/my-info', params);
  }
  /* 修改我的信息 */
  updateMyInfo (params, type) {
    return commonAxiosJson(userUrl + '/update-info', params, type);
  }

  /* 获取app版本信息 */
  getAppVersionInfo (params) {
    return getAxios(appVersionInfoUrl, params);
  }
  /* 新增，更新app版本列表信息 */
  commonAppVersionInfoListInfo (params, type) {
    return commonAxiosJson(appVersionInfoUrl, params, type);
  }
  /* 删除app版本信息 */
  deleteAppVersionInfo (params) {
    return deleteAxios(appVersionInfoUrl, params);
  }

  /* 更新个人信息 */
  updatePersonalInfo (params, type) {
    return commonAxios(personUrl, params, type);
  }

  /* 登录获取token */
  postLogin (params, type) {
    return commonAxios(loginUrl, params, type);
  }

  /* 刷新token */
  postRefreshToken (params) {
    return commonAxios(refreshTokenUrl, params, "POST");
  }

  /* 获取图片地址 */
  getImgUrl () {
    return imageUrl;
  }

  /* 获取图片上传地址 */
  getUploadUrl () {
    return uploadUrl;
  }
}

export const api = new API();